package com.qinggeng.project.system.service;

import com.qinggeng.project.system.domain.Orders;
import com.qinggeng.project.system.domain.OrdersCourier;
import com.qinggeng.project.system.domain.SysUser;

import java.util.List;

/**
 * 订单配送员Service接口
 *
 * @author qinggeng
 * @date 2020-06-17
 */
public interface IOrdersCourierService
{
    /**
     * 查询订单配送员
     *
     * @param ordersCourierId 订单配送员ID
     * @return 订单配送员
     */
    public OrdersCourier selectOrdersCourierById(Long ordersCourierId);

    /**
     * 查询订单配送员列表
     *
     * @param ordersCourier 订单配送员
     * @return 订单配送员集合
     */
    public List<OrdersCourier> selectOrdersCourierList(OrdersCourier ordersCourier);

    /**
     * 根据订单ID新增订单骑手信息
     * @param ordersId
     * @return
     */
    public int insertOrdersCourier(Long ordersId);

    /**
     * 新增订单配送员
     * @return 结果
     */
    public int insertOrdersCourier(OrdersCourier ordersCourier);

    /**
     * 修改订单配送员
     *
     * @param ordersCourier 订单配送员
     * @return 结果
     */
    public int updateOrdersCourier(OrdersCourier ordersCourier);

    /**
     * 批量删除订单配送员
     *
     * @param ordersCourierIds 需要删除的订单配送员ID
     * @return 结果
     */
    public int deleteOrdersCourierByIds(Long[] ordersCourierIds);

    /**
     * 删除订单配送员信息
     *
     * @param ordersCourierId 订单配送员ID
     * @return 结果
     */
    public int deleteOrdersCourierById(Long ordersCourierId);

    OrdersCourier selectOrdersCourierByOrdersId(Long ordersId);

    /**
     * 根据订单Id集合查询所有的配送员信息
     * @param orderIdList
     * @return
     */
    List<OrdersCourier> selectOrdersCourierByOrdersIds(List<Long> orderIdList);
}
